More Related Content Similar to JAWS DAYS 2019 (20) JAWS DAYS 20191. A W S と D o c k e r で 実 現 す る A I 研 究 の た め の
Pipeline as Code
T O C 五 反 田 メ ッ セ 2 0 1 9 . 2 . 2 3 来 栖 川 電 算 取 締 役 山 口 陽 平
JAWS DAYS 2019 ~食せ!!選りすぐりのメニューを!~ Aトラック #jd2019_a
2. Pipeline as Code
ソフトウェア開発のノウハウで管理を効率化する考え方
• “XXX” as Code
– 管理対象をコードとして記述することで、対
象の管理にソフトウェア開発のベストプラク
ティス(自動化・版管理)を適用する手法
• 恩恵:再現性・追跡可能性・再利用性の向上
• 具体例:Infrastructure as Code,CI,CD
• Pipeline as Code (= PaC)
– あらゆる管理対象はパイプライン(それを生
成するプロセス)とみなせるので、あまたあ
る “XXX” as Code の総称として使える言葉
2
3. 今日話すこと
• PaC を AI 研究へ適用する話
×PaC を AI 開発運用へ適用する話ではない。
• 最近よく聞くようになった MLops(機械学習
のための DevOps)は AI 開発運用の話が多い。
3
AI 開発 AI 運用AI 研究
6. 山 口 陽 平
@melleo1978
• 所属
– 有限会社 来栖川電算 取締役
– 名古屋工業大学大学院博士前期課程修了
• 実績
– IPA 未踏ソフトウェア創造事業採択
– Mashup Awards 9 優秀賞受賞
• 興味
– 機械学習,強化学習,UI/UX
– 高速化,省資源化,並列分散
※実物に髪の毛はありません
6
7. 山 口 陽 平
@melleo1978
• [実践]画像認識 を執筆 WEB+DB PRESS Vol.83
– これから画像認識をはじめる人におススメ
7
– OpenCV の使い
方や実装例
– SIFTなどの各種
アルゴリズムや
特定物体認識の
しくみ
– 精度改善への取
り組み方
8. 来栖川電算
設立 2003年(名古屋工業大学発ベンチャー) 従業員 62人
• SF 世界の技術を実現し、社会に役立てる
– AI 技術のライセンス販売・研究・SI
• 文字認識,物体認識,動作認識,行動認識
– スマホアプリの企画・制作・運営
スマートライフ技術
NTTドコモ様との共同研究
スマートドライブ技術
大手自動車メーカー様むけ
メイドさん
もふくめて
8
11. 技術者集団
様々なアルゴリズムや知識で課題解決
• 最先端の AI 技術
– 文字認識,物体認識,モーション認識
• 限界性能を引き出す優れた実装技術
– 機械学習・コンパイラ・データベースなどの
アルゴリズムやバイナリハックを駆使した高
精度化・高速化・省資源化・並列化・分散化
• 高品質なソフトウェアを実現する技術
– 言語・アーキテクチャ・プロセスに対する深
い理解に基づく設計と計画
11
23. 計算環境の制約
いろいろな環境の GPU を必要な時に必要なだけ使いたい
• 各人が占有するやり方はしたくない
– 費用・電源が足りない。調達運用したくない。
– そもそも GPU 1 枚/人程度じゃ全然足りない。
• お客様が貸してくれる環境も活用したい
– 大規模なオンプレ環境を用意してくれる。
• よく不足するのでクラウドも活用したい
– 突発的に百枚単位でいることがある。
• ⇒ 計算環境の抽象化・共有が重要
23
28. まとめ
AHAB は AI 研究にまつわる課題を解決
• 実験の自動化と計算環境の隔離 ※Docker
– 他の実験の計算環境・コード・データとの干
渉による不正計算や異常停止が起きない。
• 計算環境の抽象化 ※Web API,CLI,Docker
– 計算環境(自社・お客様・クラウドなど)が
変わっても同じコード・データが使える。
• 効率的な計算資源の割当と伸縮
– 個人で計算資源を占有せず、全員で共有
28
39. まとめ1
Pipeline as Code は AI 研究の課題を解決
• 研究を上手く進めるには
– たくさんの実験の実施 ⇒ 良い結果
– 絡み合う実験の管理 ⇒ 研究の信頼性
• たくさんの絡み合う実験の管理には
– 実験パイプラインのコード化が重要
– 計算環境の抽象化・隔離・共有が重要
• 実験スケジューラがあればやれる
– AHAB,AWS Batch,Amazon SageMaker
39
40. まとめ2
AI 研究のための Pipeline as Code やるなら
• AWS Batch / Amazon SageMaker
– すごく便利なので初心者は使うべき
– ただし、ちょっとお高い
• AHAB
– 規模が大きくなってきて費用が気になるなら
– オンプレ・ハイブリッドクラウドなら
• 教訓
– 基盤的な機能が欲しいと思ったら数年待て
– なければ作れ!数年先行できるのはデカい
40
47. その他
徹底的な自動化支援
⇒ Web API と CLI により、大量一括処理や外部システムとの連携が容易
多言語対応
⇒ 表示されるメッセージは全て日本語と英語に対応。カスタマイズ可能
プライベートストレージ対応 ※有料オプション
⇒ セキュリティが心配な方のために、社内ストレージに対応
プロフェッショナルサービス ※有料オプション
⇒ アノテーション作業,AI開発,これらに対するコンサルティング
47
48. ANNOFAB
Scala.js × AWS Lambda でサーバレスを実現
• スケーラブル
• インフラ監視不要
• アクセス量に応じたコスト
48
Cognito
LambdaAPI GatewayCloudFrontUsers
S3 DynamoDB
ElasticsearchSQS
SNS
X-RayCloudWatch
SES
67. DNN コンパイラ
DNNの推論を 10 ~ 1000 倍も高速化
重みや活性の量子化・スパース化、計算の共有などの
様々な手法で DNN を近似し、高速化・省資源化され
た実行形式(Linux・Android・iOS)へ変換。
67
72. 体制
AI 実現のための全業務をカバー
72
AI アプリ
SI インフラ
AI インフラ
データ モデル 研究者アノテータ
デザイナ 開発者
職種 正社員
アルバイト
合計
24 時/週以上 12 時/週以上 ※即戦力 試用期間
研究者 20 % 2 % 10 % 0 % 32 %
開発者 15 % 7 % 12 % 3 % 37 %
デザイナ 0 % 0 % 3 % 0 % 3 %
アノテータ 5 % 23 % 0 % 0 % 28 %
合計 40 % 32 % 25 % 3 % 100 %